using System;
using System.Collections;

namespace Sedna.Core.Controller.Configurations
{
	/// <summary>
	/// Default implementation for IPopupButtonConfiguration.
	/// </summary>
	public class PopupButtonConfiguration: ClientScriptingConfiguration, IPopupButtonConfiguration
	{
		private string popupBase;
		private string popupPage;
		private int popupWidth;
		private int popupHeight;
		private string popupParameters;
		private string enterType;
		private bool postBackOnSelect=false;
		private bool hookupParameterControlsEvents=true;

//		private string relatedControlVariable;
//		private string parameterControlVariable;

		private IDictionary parameterControls;
		private IDictionary displayControls;

        private IList valueKeys;

		public bool PostBackOnSelect
		{
			get { return postBackOnSelect; }
			set { postBackOnSelect = value; }
		}

		public string PopupBase
		{
			get { return popupBase; }
			set { popupBase = value; }
		}

		public string PopupPage
		{
			get { return popupPage; }
			set { popupPage = value; }
		}

		public int PopupWidth
		{
			get { return popupWidth; }
			set { popupWidth = value; }
		}

		public int PopupHeight
		{
			get { return popupHeight; }
			set { popupHeight = value; }
		}

		public string PopupParameters
		{
			get { return popupParameters; }
			set { popupParameters = value; }
		}

		public string EnterType
		{
			get { return enterType; }
			set { enterType = value; }
		}

/*
		public string RelatedControlVariable
		{
			get { return relatedControlVariable; }
			set { relatedControlVariable = value; }
		}
*/

/*
		public string ParameterControlVariable
		{
			get { return parameterControlVariable; }
			set { parameterControlVariable = value; }
		}
*/

		public IDictionary ParameterControls
		{
			get { return parameterControls; }
			set { parameterControls = value; }
		}

		public IDictionary DisplayControls
		{
			get { return displayControls; }
			set { displayControls = value; }
		}

		public bool HookupParameterControlsEvents
		{
			get { return hookupParameterControlsEvents; }
			set { hookupParameterControlsEvents = value; }
		}

	    public IList ValueKeys
	    {
	        get { return valueKeys; }
	        set { valueKeys = value; }
	    }
	}
}
